The present invention relates to a data processing method for data recording and reproducing by which data to be recorded on a recording medium is encoded and data read therefrom is decoded. More particularly, the invention relates to a high efficiency error correction encoding method for encoding data to be recorded and an error correction decoding method for decoding read signal to reproduce highly error-free data.
Magnetic disk devices (hereinafter referred to as HDDs) and other data recording and reproducing apparatus have been facing a further intensifying demand for higher recording densities. In the field of signal processing technology which supports these recording and reproducing apparatus, progress has also been made to allow higher recording densities.
FIG. 2 shows an example of a data recording and reproducing circuit in a HDD. On the recording side of FIG. 2, error correction encoding of data input to an input terminal 1 is performed by a symbol error correction encoder 20. Typically, a Reed-Solomon code (hereinafter referred to as a RS code) is used as the error correction code. In addition, RLL (Run Length Limited) encoding is performed by a RLL encoder 10 to suppress repetition of either “1” or “0” in magnetic recording and reproducing of data. Then, a recording processing circuit 30 adds synchronization signal and others before information is recorded on a recording medium 60 via a write amplifier 40 and a write head 50.
On the reproducing side, a signal read by a read head 150 is amplified by a read amplifier 140 and put to a reproducing processing circuit 130 where synchronization signal detection and others are performed. Then, RLL decoding is performed in a RLL decoder 110 and code error correction is performed by a symbol error correction decoder 120 which corrects errors including random read/write errors and burst errors attributable to a defect. The result is output to an output terminal 2.
Generally, in data processing for recording and reproducing in a HDD, error correction encoding of the input data is performed by a symbol error correction encoder. The error correction code is a Reed-Solomon code (hereinafter referred to as a RS code), a class of algebraic geometric codes. 512 bytes of input data with several bytes (some 10 bytes) of additional data are encoded and decoded by adding error correction redundant symbols.
In typical RS codes, one symbol is composed of 8 bits. To make t-byte errors correctable, a 2t-byte RS code is added to 512 bytes of input data with several additional data bytes. If an 8-bit error correction code is used, the total number of data to be corrected must be not larger than 28−1=255 in bytes (2040 in bits). In this case, 3 or 4 interleaves are therefore performed for encoding.
Further, these encoded data are RLL-encoded to suppress repetition of either “1” or “0” before being recorded on the recording medium. For reproducing, decoding of this RLL code is done before RS code-based decoding is done.
Patent Document 1 (Japanese Patent Laid-Open No. Hei 11-7736) proposes a method in which input data is RLL-encoded before RS-encoding is performed (hereinafter referred to as RLL-ECC) and a method in which encoding into a 9-bit RS code is implemented through two interleaves. This RLL-ECC method has an advantage that read/write errors do not propagate in the process of RLL decoding.